# Makefile

# 编译器设置
CC = g++
CFLAGS = -Wall -Wextra -std=c++11 -I ./experiment1 -I ./experiment2 -I ./experiment3

# 目标文件
TARGET = compiler

# 源文件
SRCS := $(wildcard experiment1/*.cpp) $(wildcard *.cpp) $(wildcard experiment2/*.cpp) $(wildcard experiment3/*.cpp)
# 生成的目标文件
OBJS = $(SRCS:.cpp=.o)

# 默认目标
all: $(TARGET)
	rm -f $(OBJS)
	./$(TARGET)

# 生成可执行文件
$(TARGET): $(OBJS)
	$(CC) $(CFLAGS) -o $@ $^

# 编译源文件为目标文件
%.o: %.cpp
	$(CC) $(CFLAGS) -c -o $@ $<

# 清理生成的文件
clean:
	rm -f $(OBJS) $(TARGET)
